package org.issaclu.springbootmybatis.user.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.issaclu.springbootmybatis.role.dto.RoleInfo;
import org.issaclu.springbootmybatis.user.bo.UserDetailBo;
import org.issaclu.springbootmybatis.user.dto.UserDetail;
import org.issaclu.springbootmybatis.user.dto.UserInfoDetail;

import java.util.List;

/**
 * @author zhaoxingwu
 */
@Mapper
public interface UserInfoAdvanceQueryMapper {
    /**
     * TODO 如果入参是多个复杂类型的参数应该怎么写
     * @param user 查询条件1
     * @param role 查询条件2
     * @return 查询结果
     */
    List<UserDetail> getByMultiParam(UserDetail user, RoleInfo role);


    /**
     * 多条件动态查询
     * @param param 查询条件
     * @return 查询结果
     */
    List<UserInfoDetail> getByDynamicWhere(UserDetailBo param);
}
